From: Keir Fraser Date: Thu, 2 Jul 2009 10:33:43 +0000 (+0100) Subject: libxc: Fix bugs in xc_exchange_page: pfn_type indexed by gpfn. X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~13660 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=14fbdbd3d383218d144b3bed2d6787bad9f06cd3;p=xen.git libxc: Fix bugs in xc_exchange_page: pfn_type indexed by gpfn. Signed-off-by: Jiang, Yunhong --- diff --git a/tools/libxc/xc_offline_page.c b/tools/libxc/xc_offline_page.c index 892f12cf7f..f25cfbd7c7 100644 --- a/tools/libxc/xc_offline_page.c +++ b/tools/libxc/xc_offline_page.c @@ -583,7 +583,7 @@ int xc_exchange_page(int xc_handle, int domid, xen_pfn_t mfn) /* Don't exchange CR3 for PAE guest in PAE host environment */ if (minfo.guest_width > sizeof(long)) { - if ( (minfo.pfn_type[mfn] & XEN_DOMCTL_PFINFO_LTABTYPE_MASK) == + if ( (minfo.pfn_type[gpfn] & XEN_DOMCTL_PFINFO_LTABTYPE_MASK) == XEN_DOMCTL_PFINFO_L3TAB ) goto failed; } @@ -621,7 +621,7 @@ int xc_exchange_page(int xc_handle, int domid, xen_pfn_t mfn) old_ptes.cur = 0; /* Unpin the page if it is pined */ - if (minfo.pfn_type[mfn] & XEN_DOMCTL_PFINFO_LPINTAB) + if (minfo.pfn_type[gpfn] & XEN_DOMCTL_PFINFO_LPINTAB) { mops.cmd = MMUEXT_UNPIN_TABLE; mops.arg1.mfn = mfn;